package com.freight.order.service;


import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.freight.base.dto.AreaDto;
import com.freight.order.dto.*;
import com.freight.order.vo.*;
import com.freight.user.dto.CompanyDto;
import com.freight.user.dto.DriverDto;

import java.util.List;
import java.util.Map;

/**
 * 订单详情信息接口
 *
 * @author huyingtai
 */
public interface IOrderVoService extends IService<OrderVo> {



    /**
     * 获取货主看到的订单 分状态
     *
     * @param page
     * @param searchOrderDto
     * @return
     */
    Page<OrderVo> getOrderInfoByState(Page<OrderVo> page, SearchOrderDto searchOrderDto);

    /**
     * 获取货主看到的订单 分状态
     *
     * @param page
     * @param companySearchOrderDto
     * @return
     */
    Page<OrderVo> getCompanyOrderInfoByState(Page<OrderVo> page, CompanySearchOrderDto companySearchOrderDto);

    /**
     * 获取司机看到的订单 分状态
     *
     * @param page
     * @param orderStates
     * @return
     */
    Page<OrderVo> getDriverOrderInfoByState(Page<OrderVo> page, String[] orderStates);

    /**
     * 获取司机看到的订单
     *
     * @param page
     * @return
     */
    Page<DriverOrderCompanyVo> getDriverOrderCompanyInfo(Page<DriverOrderCompanyVo> page);


    /**
     *
     * @param orderId
     * @return
     */
    OrderVo getOrderVoInfo(Long orderId);

   }